1. Field of the Invention
The present invention relates generally to macros, and in particular, to a method, apparatus, and article of manufacture for dynamically recording and creating a macro using a history of operations.
2. Description of the Related Art
Users often repeat a series of steps in the course of a computer project (e.g., drawing project, word processing project, etc.). Repeating the same set of steps over and over again is time consuming and often error prone due to the amount of interaction. Recording a series of steps and reusing the recording is a much more efficient way of achieving the same goal. Such a recording is commonly referred to as a “macro”. As used herein, a macro refers to a series of user commands, actions, or keystrokes that have been recorded. To create a macro, a user must plan ahead, initiate a macro recording session, perform various steps, stop the recording, and assign a name to the macro. Such a series of steps is time consuming and requires advance planning by the user. Such problems may be better understood with a more detailed explanation of prior art macros.
In a computer drawing environment, a user might perform a series of steps and afterwards realize that he/she desires to repeat that same series of steps one or more times. However, the prior art would require the user to manually repeat the steps over again. Further, if the user wanted to perform the steps more than once and/or store the series of steps, he/she must plan in advance to record a macro and complete the macro creation and recording process. For example, suppose a user creates a circle, draws a square to enclose the circle and then rotates both ninety (90) degrees. Thereafter, the user realizes that the same shape should be repeated three more times. The user must activate a menu to create a macro, being the recording process, draw the circle again, drawn the square enclosing the circle again, rotate both 90 degrees, stop the recording, and create a name for the macro. Such a series of steps not only requires advance planning but also consumes additional time and memory to merely repeat a series of steps.
Accordingly, what is needed is a method, apparatus, and article of manufacture for repeating a series of steps in a dynamic, flexible, reliable, and consistent manner without advance planning.